package cn.b.sky.mes.qm.dao;

import java.util.List;

import cn.b.sky.mes.qm.model.DefectType;
import cn.b.sky.mes.qm.model.condition.DefectTypeCondition;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

/**
 * 
 * <strong>Title : DefectTypeDao.java<br></strong>
 * <strong>Package : cn.b.sky.mes.qm.dao<br></strong>
 * <strong>Description : </strong>缺陷类型持久层<br> 
 * <strong>Create on : 2015-12-14 上午09:51:42<br></strong>
 * <p>
 * @author dapeng.li<br>
 * @version <strong>v1.0.0</strong><br>
 * <br>
 * <strong>修改历史:</strong><br>
 * 修改人 | 修改日期 | 修改描述<br>
 * -------------------------------------------<br>
 * <br>
 * <br>
 */
@Repository
public interface DefectTypeDao {

  List<DefectType> selectDefectTypeListByCondition(DefectTypeCondition condition);

  int selectDefectTypeCountByCondition(DefectTypeCondition condition);

  DefectType getDefectType(@Param("siteCode") String siteCode, @Param("defectTypeCode") String defectTypeCode);

  void insertDefectType(DefectType defectType);

  void updateDefectType(DefectType defectType);

  void deleteDefectType(@Param("siteCode") String siteCode, @Param("defectTypeCode") String defectTypeCode);

  /**
   * 
   * <strong>Title : selectDefectTypeForSuggest<br></strong>
   * <strong>Description : </strong>缺陷类型搜索建议<br> 
   * <strong>Create on : 2016年4月11日 下午8:29:16<br></strong>
   * <p>
   * @param condition
   * @return
   * List<DefectType>
   * @throws 
   * @author zhaoxin01<br>
   * @version <strong>v1.0.0</strong><br>
   * <br>
   * <strong>修改历史:</strong><br>
   * 修改人 | 修改日期 | 修改描述<br>
   * -------------------------------------------<br>
   * <br>
   * <br>
   */
  List<DefectType> selectDefectTypeForSuggest(DefectTypeCondition condition);
}
